#pragma once

#include "fxcc/core/graph/opengl3/pch.h"

namespace fxcc
{
	namespace graph
	{
		namespace opengl3
		{

			struct FXCC_API GlfwApp : public fxcc::platform::glfw::App
			{
				GlfwApp(const fxcc::platform::common::App::Desc& desc) ;

				virtual bool Init();

				bool InitGraph();

				int Run();

				bool Done();

			public:
			
				virtual void OnDestroy();

				virtual void OnUpdate();

				virtual void OnFrameRender();

				virtual bool InitResources();

				virtual void OnFramebuffersize(int w, int h) override;
			};
		}
	}
}